#include<stdio.h>
#include<stdlib.h>
#include <sys/types.h>
#include <sys/ipc.h>
#include <sys/msg.h>

#define MSGLEN (sizeof(MSG) - sizeof(long))
#define ERRMSG(msgerr) do{\
			fprintf(stderr,"file:%s,fun:%s,line:%d",__FILE__,__func__,__LINE__);\
			perror(msgerr);\
			exit(-1);\
			}while(0);

int main(int argc,const char *argv[])
{
	key_t key = ftok(".",100);
	if (key < 0)
		ERRMSG("ftok error");
	
	int msgid = msgget(key,IPC_CREAT | 0777);
	if (msgid < 0)
		ERRMSG("msgget error");
	
	system("clear");
	printf("msgid=%d\n",msgid);
	system("ipcs -q");

	puts("*************************************");

	if (msgctl(msgid,IPC_RMID,NULL)<0)
		ERRMSG("msgctl error");

	system("ipcs -q");
	return 0;
}

